home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus Special 25
/
AMIGAplus Sonderheft 25 (2000)(Falke)(DE)(Track 1 of 4)[!].iso
/
Magazin
/
Future-PD
/
CTWHelpFile.hyper
< prev
next >
Wrap
Text File
|
1998-01-30
|
11KB
|
448 lines
{:intro}
{^}The CTW Engine Editor By Internext Software
{^}Programmed By John Bintz
{^}Hypertext Document By John Bintz
{^}================================
{>commands}Script Commands
{>constr}Script Constructs
{>format}File Formats
{>info}Information
This puppy is Hypertexted. Just start clicking!
{:commands}
{/2}=============================================
{/3}CTW Engine Scripting Commands
{/2}=============================================
Remember to end all script lines with pipes (|)!
{>PAUSE}Jump Down A Couple
{>WAIT}Jump Down Some More
{>ITEMSPEC}Jump Down Even More
{>CHANGEFRAMEBASE}Jump To The End
{>intro}Jump Back To Intro
{::}
{/7}:Label
Set a Label to jump to within a program.
{:[}
{/7}[ Text Params...
Display some text. Parameters are labelled in the text
string as %1 on.
{:]}
{/7}] Text Label
Make a text menu mption. Jump to Label if selected.
{:SET}
{/7}SET Variable Value
Set The Variable To Value
{:MATH}
{/7}MATH Value Op Value Variable
{/7}MATH Variable Op Value
Perform a mathematical operation. Form one places Result into different
Variable, while form two places Result into first Variable.
OP is any of the following operators:
{/5} + Addition
{/5} - Subtraction
{/5} * Multiplication
{/5} / Division
{/5} % Division Remainder
{:PAUSE}
{/7}PAUSE Seconds
Pause the script for Seconds
{:GOTO}
{/7}GOTO Label
Goto the Label in the program
{:ONGOTO}
{/7}ONGOTO Base Offset Labels...
Jump to the Label specified, starting at 1, from the formula Offset-Base.
Example:
{/6}ONGOTO 4 6 JUMPNOW JUMPLATER JUMPNEVER
would send the script to the label JUMPNEVER
{:LABELJUMP}
{/7}LABELJUMP Character Label
Jump a Character's script (identified by their position in the CHARZ block,
starting at zero) to Label.
{:WALK}
{/7}WALK Direction Speed
Walk at a given Speed (in pixels) in the following directions:
{/5} 0 Up
{/5} 1 Down
{/5} 2 Left
{/5} 3 Right
{:WALKTO}
{/7}WALKTO X Y Speed There
Walk to a specific point (X,Y) on the map at Speed pixels per step. When
you reach it, There is true.
{:IF}
{/7}IF Variable Op Value Label
{/7}IF Variable Label
The first form uses an Operand to determine trueness, while the second
check if Variable is true. In either case, if the result is true, the
script jumps to Label. The Operands for form one:
{/5} > Greater Than
{/5} < Less Than
{/5} => >= Greater Than/Equal
{/5} <= =< Less Than/Equal
{/5} = Equal To
{/5} <> Not Equal To
{:WAIT}
{/7}WAIT Clicks
Wait for Clicks/50th of a second
{:RND}
{/7}RND Variable UpperBound
Put a random number into Variable from 0-UpperBound
{:TIMER}
{/7}TIMER Variable
Put into Variable the number of clicks since powerup
{:GLOSET}
{:GLOGET}
{/7}GLOSET GlobalVariable Value
{/7}GLOGET GlobalVariable Variable
These commands set and get Global Variables, a set of 256 variables that
travel between scripts.
{:BITSET}
{:BITCLR}
{:BITCHG}
{/7}BITSET Varibale Bit
{/7}BITCLR Variable Bit
{/7}BITCHG Variable Bit
These set, clear, or change a bit in a variable. Variables have 32 bits from
0-31.
{:BITGET}
{/7}BITGET Variable Bit Result
Result is true if Bit in Variable is set.
{:ADDITEM}
{/7}ADDITEM Name
Add the item Name to the player's inventory.
{:HAVEITEM}
{/7}HAVEITEM Name Result
If the player has item Name, Result is true.
{:TAKEITEM}
{/7}TAKEITEM Name Result
If the player has item Name, Result is true and the item is removed from the
player's inventory.
{:ITEMSPEC}
{/7}ITEMSPEC Name Value Result
Get the specs for an item:
{/5} WP Weapon Power
{/5} AP Armor Power
{/5} HP Hit Points Restored
{/5} COST Item Cost
{/5} TYPE Type Of Item
{/2} 0 Weapon
{/2} 1 Armor
{/2} 2 Hat
{/2} 3 Gloves
{/2} 4 Restores HP
{/2} 5+ Custom
{:KILL}
{/7}KILL
Kill a character and end the script
{:LOADLEVEL}
{/7}LOADLEVEL Levelname
Load the level Levelname
{:ATTACK}
{/7}ATTACK Group
Cause the Group to attack the player
{:BUY}
{/7}BUY Item Result
Buy Item for a certain amount of money. If the player has enough money, Result
is true and the player gets the item.
{:SELL}
{/7}SELL Item Result
Try to sell the player's Item. If the player has the item, he sells it for its
total price and Result is true.
{:RATINGSET}
{:RATINGGET}
{/7}RATINGSET Rating Value
{/7}RATINGGET Rating Value
Get or set a rating from the player:
{/5} HP Hit Points
{/5} MHP Max Hit Points
{/5} STR Strength
{/5} DEX Dexterity
{/5} INT Intelligence
{/5} CRED Credits
{/5} EXP Experience
{:CHANGEFRAMEBASE}
{/7}CHANGEFRAMEBASE FrameSet
Change a character's Frame Set to FrameSet
{:COORDS}
{/7}COORDS Char X Y
Get the coordinates of character Char into X and Y
{:MOVETO}
{/7}MOVETO X Y
Move a character to (X,Y)
{:FRAMEANIM}
{/7}FRAMEANIM FrameSet
Animate the character with FrameSet, then continue
{:ITEMREMOVE}
{:ITEMISGONE}
{:ITEMKILL}
{:ITEMPUTBACK}
{/7}ITEMREMOVE Which
{/7}ITEMISGONE Which Result
{/7}ITEMKILL Which
{/7}IITEMPUTBACK Which
These commands use a bunch of Global Variables to keep track of individual
item scripts. When a player takes an item, ITEMREMOVE it. Then, add to the
beginning of the item's script an ITEMISGONE request. If the Result is
True, KILL the item. ITEMPUTBACK changes the item's state. ITEMKILL combines
ITEMREMOVE and KILL.
{:MENURESET}
{:MENUADD}
{:MENUCHOICE}
{/7}MENURESET
{/7}MENUADD Short Long
{/7}MENUCHOICE Result
These commands let you use circular menus, such as the player's menu.
MENURESET first, then add commands, giving the short (rotated) string, then
the long (bottom of screen descriptor) string. MENUCHOICE returns the number
of the item, starting from zero.
{:TOGGLETOUCH}
{/7}TOGGLETOUCH
Change the script's ability to jump to :TOUCH when touched.
{:KEYDOWN}
{/7}KEYDOWN Key Result
Check to see if Key is being pressed. If it is, Result is true.
{:SOUND}
{/7}SOUND File Frequency Voices
Play sound File on disk at Frequency through Voices:
{/5} %0123
{/5} 0 and 2 are Left Channels
{/5} 1 and 3 are Right Channels
{:TOGGLEDISPLAY}
{/7}TOGGLEDISPLAY
Toggle display updating on and off.
{:FADEIN}
{:FADEOUT}
{/7}FADEIN Time
{/7}FADEOUT Time
Fade in and out the screen for 15*Time/50 Seconds
{:LOCKCONTROLS}
{:UNLOCKCONTROLS}
{/7}LOCKCONTROLS
{/7}UNLOCKCONTROLS
Prevent or allow the player to move.
{:constr}
{/2}=========================================
{/5}Useful Script Constructions
{/2}=========================================
{>intro}Jump Back To Introduction
{/4}WalkLoops
A character will walk around a bunch of different points, all set in the
script:
{/2}SET @WALKLOOP 0|
{/2}:WALKLOOP|
{/2}ONGOTO 0 @WALKLOOP POINT1 POINT2 ...
{/2}:POINT1|
{/2}WALKTO X Y SPEED @THERE|
{/2}IF @THERE NEXTPOINT|
{/2}GOTO WALKLOOP|
{/2}:NEXTPOINT|
{/2}MATH @WALKLOOP + 1|
{/2}MATH @WALKLOOP % POINTS|
{/2}GOTO WALKLOOP|
{/4}Text Menus
Text Menus are menus put directly upon the text window. They are useful when
selecting between Yes/No answers or Buy/Sell options:
{/2}[ "Hello There!"|
{/2}[ "Do you like it here?"|
{/2}] "Yes I Do" YES|
{/2}] "No I Don't" NO|
{/2}GOTO END|
{/2}:YES|
{/2}[ "That's good!"|
{/2}GOTO END|
{/2}:NO|
{/2}[ "Well, then I'll have to DESTROY YOU!"|
{/2}ATTACK|
{/2}GOTO END|
{/4}Circluar Menus
Circular menus are the menus that rotate around the character, and are very
useful when you have more than three choices:
{/2}MENURESET|
{/2}MENUADD "Buy" "Buy A Weapon"|
{/2}MENUADD "Sell" "Sell A Weapon"|
{/2}MENUADD "Leave" "Leave The Store"|
{/2}MENUCHOICE @RESULT|
{/2}ONGOTO 0 @RESULT BUY SELL LEAVE|
{/4}Global Variables
Global variables create storylines. They travel between levels and are
useful for keeping track of what you've done:
{/2}GLOGET 0 @CURRPOS|
{/2}IF @CURRPOS = 4 STORY4|
{/2}IF @CURRPOS = 3 STORY3|
{/2}IF @CURRPOS = 2 STORY2|
{/2}IF @CURRPOS = 1 STORY1|
{:format}
{/2}================================